using System;
using System.Collections.Generic;
using Orbitone.MeetingRooms.Services.EWS;
using Orbitone.MeetingRooms.Services.Model;
using CalendarEvent = Microsoft.Exchange.WebServices.Data.CalendarEvent;

namespace Orbitone.MeetingRooms.Services
{
    public interface IExchangeService
    {
        List<AvailabilityModel> GetAvailability(List<MailboxModel> mailboxes, DateTime startDate, DateTime endDate, int interval);
        string SaveAppointment(CalendarEventModel appointmentModel);
        void DeleteAppointment(string calendarEventId, string roomEmail);
        List<AppointmentModel> FindAppointments(string filterValue, string mailbox);
        AppointmentModel GetAppointment(string alternativeIdType, string mailbox, DateTime startTime, DateTime endTime);
    }
}